package cn.iocoder.yudao.module.enterprise.enums;

import cn.iocoder.yudao.framework.common.exception.ErrorCode;

/**
 * 企业碳核算 错误码枚举类
 * <p>
 * 企业碳核算系统，使用 1-021-000-000 段
 */
public interface ErrorCodeConstants {

    // ========== 控制计划 1021000000 ==========
    ErrorCode CONTROL_PLAN_NOT_EXISTS = new ErrorCode(1021000000, "控制计划不存在");
    ErrorCode ORGANIZATION_NOT_EXISTS = new ErrorCode(1021000001, "组织基本信息不存在");
    ErrorCode BOUNDARY_NOT_EXISTS = new ErrorCode(1021000002, "组织边界不存在");
    ErrorCode SERVICE_NOT_EXISTS = new ErrorCode(1021000003, "主营产品/服务不存在");
    ErrorCode DATA_MANAGE_NOT_EXISTS = new ErrorCode(1021000005, "数据管理计划不存在");

    // ========== 碳排放管理 1021001000 ==========
    ErrorCode EMISSION_SOURCE_NOT_EXISTS = new ErrorCode(1021001000, "排放源不存在");
    ErrorCode MODEL_NOT_EXISTS = new ErrorCode(1021001001, "核算模型不存在");
    ErrorCode MODEL_EMISSION_NOT_EXISTS = new ErrorCode(1021001002, "核算模型和排放源关联不存在");
    ErrorCode ACCOUNT_NOT_EXISTS = new ErrorCode(1021001003, "碳排放核算不存在");
    ErrorCode ACCOUNT_SOURCE_NOT_EXISTS = new ErrorCode(1021001004, "碳排放核算和排放源关联不存在");
    ErrorCode REPORT_NOT_EXISTS = new ErrorCode(1021001005, "核算报告不存在");
    ErrorCode REPORT_REDUCTION_NOT_EXISTS = new ErrorCode(1021001006, "核算报告和减排信息关联不存在");
    ErrorCode REPORT_TYPE_NOT_EXISTS = new ErrorCode(1021001006, "核算报告类型不存在");

    // ========== 碳减排管理 1021002000 ==========
    ErrorCode EMISSION_BASIS_NOT_EXISTS = new ErrorCode(1021002000, "排放基准不存在");
    ErrorCode BASIS_VALUE_NOT_EXISTS = new ErrorCode(1021002001, "基准排放量不存在");
    ErrorCode REDUCTION_SCENE_NOT_EXISTS = new ErrorCode(1021002002, "减排场景不存在");
    ErrorCode EMISSION_BASIS_HAS_EXISTS = new ErrorCode(1021002003, "排放基准已存在");

    // ========== 报告下载 1021003000 ==========
    ErrorCode REPORT_DOWNLOAD_NOT_EXISTS = new ErrorCode(1021003000, "报告下载不存在");
    ErrorCode REPORT_LANGUAGE_NOT_EXISTS = new ErrorCode(1021003001, "报告语言类型不存在");

}
